#include <iostream>
using std::cout;
using std::endl;

//回顾const使用
void test(){
    //const int number2;error
    const int number = 10;
}

void test2(){
    //const修饰指针类型
    int a = 10;
    int b = 20;
    //const修饰的是哪个部分
    //修饰的是*p，指针所指向的值
    //这部分是不可变的
    const int * p =  &a;
    int const * p2 = &b;
    //*p = 30;error
    p = &b;
}

void test3(){
    int a = 10;
    int b = 20;
    //const修饰的是p，p是一个指针
    //所以指针里面存储的内容便是不可变的
    int * const p = &a;
    //p = &b;error
    *p = 30;
    cout << *p << endl;
}

int main()
{
    test3();
    return 0;
}

